* regressions_pfinformal_bite_industry.do	JEP	04/05/15
* Does regressions that are in the term paper, for formal workers: pfi
* Monthly wages
* Exclude some industries
* Do regressions by city - industry
* Passthru - Global a formal

*************************** Change log ********************************** 

/*
	
*/	

clear 
version 13.1

* Project info
cap project, doinfo
if _rc==198 {
		if c(os)=="Unix" loc master "/home/jperez/AA_Minimum_Wage" 
 else if c(username)=="J16339" loc master "B:\Col_Minimum_Wage"
 else if c(username)=="A15858" loc master "B:\Col_Minimum_Wage"
	else loc master "C:/Users/jorpp/Dropbox (Brown)/Col_Minimum_Wage"
 loc pr = 0
}
else {
	local master "`r(pdir)'"
	local doname "`r(dofile)'"  
 loc pr = 1
	* Project calls
	project, uses("`master'/Data/Source/ocupados_mw.dta")
	* Call programs
	project, relies_on("`master'/Code/Est/sample_choice.do")
	project, relies_on("`master'/Code/Est/build_mw_measures.do")
	project, relies_on("`master'/Code/Est/build_treatment.do")
	project, relies_on("`master'/Code/Est/export_rif.do")
	project, relies_on("`master'/Code/Est/confirmedrun.do")
	project, relies_on("`master'/Code/Est/graph_rif.do")
}
*/


* Call necessary programs. I do not call using project to carry the programs around. I do not put these in the ado/personal folder because they are specific to the project. They are not ado files.
do "`master'/Code/Est/sample_choice.do"
do "`master'/Code/Est/build_mw_measures.do"
do "`master'/Code/Est/build_treatment.do"
do "`master'/Code/Est/export_rif.do"
do "`master'/Code/Est/confirmedrun.do"
do "`master'/Code/Est/graph_rif.do"


use "`master'/Data/Source/ocupados_mw.dta", clear

* Choose quantiles
glo qtiles "5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90"
* glo qtiles "90"
* Number of bootstraps
glo boot=200


* Choose sample - all workers to generate mw measure
mysample pfisample1 , hmin(30) hmax(50) sex(0) edadm(65) wage(salario) formal exind(13,29,42)
mysample pfisample2 , hmin(30) hmax(50) sex(0) edadm(65) wage(salario) informal exind(13,29,42)
mysample pfisample3 , hmin(30) hmax(50) sex(0) edadm(65) wage(salario) informal domestic exind(13,29,42)
gen pfisample= (pfisample1)

* Build mw measures
mw_measures pfisample , stub(pfi)


* Now go back to informal edom sample for impact
replace pfisample=pfisample2
drop pfisample1 pfisample2 pfisample3

* Build treatment
mytreatment, posts("tq(1999q1)") mw(bite_pfi) wage(salario_mensual_real)

* RIF regressions

* Create estimation results folder if it doesn't already exist
cap mkdir "`master'/Ster"
cap mkdir "`master'/Ster/pfi2_new_indcc"

* For these I'm going to assume the clusters are the city - industry pairs. This assumes that there is not correlation within city across industries, only within those pairs. Could also run with the standard clustering by city, but that would mean that I'm not really increasing the sample size by running within industry.

* The number of clusters is large rerun enough that I don't need the full CGM framework, can run just with cluster
egen city_ind=group(ccode cactividad_empresa)

foreach x in $qtiles {
	di " Percentile `x'"
	loc fw: word 1 of $qtiles
	loc count: word count $qtiles
	di `count'
	loc lw: word `count' of $qtiles
	if `x'==`lw' & `pr'!=0 loc reg="register"
	else loc reg ""
	if `x'==`fw' loc r="replace"
	else loc r="append"
	
	/*
	* Panel A. Employment
	confirmedrun, `reg' controls() name(`master'/Ster/pfi2_new_indcc/reg_emp_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiA) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time)cluster(ccode)
	* cgmrif2 lw treat i.ccode i.time emp if pfisample , hyp(0) boot($boot) cluster(ccode) x(treat) i(ccode) t(time) q(`x') rif(pfiA`x')
	* exportrif, name(`master'/Ster/pfi_new/reg_emp_tq(1999q1)_bite_salario_mensual_real_50_edom) p(`x') r(`r')
	*/
	* Panel B. Employment and Bartik Price Variable
	confirmedrun, `reg' controls(bartikp1_ex ) name(`master'/Ster/pfi2_new_indcc/reg_emp_bp_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiB) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	* Panel C. Employment and Bartik Quantity Variable
	*confirmedrun, `reg' controls(bartikq_ex ) name(`master'/Ster/pfi2_new_indcc/reg_emp_bq_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiC) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	/*
	* Panel D. Employment and City Trends
	confirmedrun, `reg' controls(i.ccode#c.trend) name(`master'/Ster/pfi2_new_indcc/reg_sst_emp_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiD) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(city_indcc) large rerun
	*/
	* Panel E. Employment, Bartik Price Variable and City Trends
	confirmedrun, `reg' controls(i.ccode#c.trend bartikp1_ex ) name(`master'/Ster/pfi2_new_indcc/reg_sst_emp_bp_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiE) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	* Panel F. Employment, Bartik Quantity Variable and City Trends
	*confirmedrun, `reg' controls(i.ccode#c.trend bartikq_ex ) name(`master'/Ster/pfi2_new_indcc/reg_sst_emp_bq_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiF) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	* Panel G. Employment, Bartik Price Variable - Industry fe, city fe and interactions
	*confirmedrun, `reg' controls(bartikp1_ex ) name(`master'/Ster/pfi2_new_indcc/reg_emp_bp_ixc_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiG) p(`x') r(`r') sample(pfisample) fe(i.ccode##i.cactividad_empresa i.time)cluster(ccode)
	* Panel H. Employment, Bartik Quantity Variable and City - Industry fe, city fe and interactions
	*confirmedrun, `reg' controls(bartikq_ex ) name(`master'/Ster/pfi2_new_indcc/reg_emp_bq_ixc_tq(1999q1)_bite_salario_mensual_real_50_edom_indcc) rif(pfiH) p(`x') r(`r') sample(pfisample) fe(i.ccode##i.cactividad_empresa i.time)cluster(ccode)
	/*
	* Panel I - Employment, Bartik Price Variable - Industry fe, city fe and interactions - City Industry trends
	confirmedrun, `reg' controls(bartikp1_ex) name(`master'/Ster/pfi2_new_indcc/reg_ct_emp_bp_ixc_tq(1999q1)_bite_salario_mensual_real_50_edom_ind) rif(pfiI) p(`x') r(`r') sample(pfisample) fe(i.ccode##i.cactividad_empresa i.ccode#i.cactividad_empresa#c.trend i.time)cluster(ccode)	
	* Panel J. Employment, Bartik Quantity Variable and City - Industry fe, city fe and interactions
	confirmedrun, `reg' controls(bartikq_ex) name(`master'/Ster/pfi2_new_indcc/reg_ct_emp_bq_ixc_tq(1999q1)_bite_salario_mensual_real_50_edom_ind) rif(pfiJ) p(`x') r(`r') sample(pfisample) fe(i.ccode##i.cactividad_empresa i.ccode#i.cactividad_empresa#c.trend i.time)cluster(ccode)
	
	* Panel K. Employment by industry, Bartik Price Variable and City Trends
	confirmedrun, `reg' controls(i.ccode#c.trend bartikp1_ex empind) name(`master'/Ster/pfi2_new_indcc/reg_sst_empind_bp_tq(1999q1)_bite_salario_mensual_real_50_edom_ind) rif(pfiK) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	* Panel L. Employment by industry, Bartik Quantity Variable and City Trends
	confirmedrun, `reg' controls(i.ccode#c.trend bartikq_ex empind) name(`master'/Ster/pfi2_new_indcc/reg_sst_empind_bq_tq(1999q1)_bite_salario_mensual_real_50_edom_ind) rif(pfiL) p(`x') r(`r') sample(pfisample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)
	*/
}

* Graph results and export

clear

cap program drop mex
program define mex
	cap mkdir "`2'/Doc/ster_figures/pfi2_new_indcc"
	cap mkdir "`2'/Doc/ster_figures/pfi2_new_indcc/1999q1"
	graph export "`2'/Doc/ster_figures/pfi2_new_indcc/1999q1/`1'.pdf", replace
	*! epstopdf "`2'/Doc/ster_figures/pfi2_new_indcc/1999q1/`1'.eps"
	* erase "`2'/Doc/ster_figures/pfi2_new_indcc/1999q1/`1'.eps"
	* project, creates("`master'/Doc/descriptive_figures/density/`1'.pdf")
end	

foreach spec in reg_emp_bp reg_sst_emp_bp {
	graph drop _all
	graphrif, master("`master'") ster(Ster) folder(pfi2_new_indcc) qtiles($qtiles) spec(`spec') time(tq(1999q1)) rareaopts(bcolor(gs13))twowayopts(title("Formal sector - Bite - By city industry" "`spec' - 1999q1" ) xtitle(Percentile) ytitle(Coef) yscale(range(-0.0075 0.0075)) ylabel(-0.0075(0.0025)0.0075) yline(0))
	mex `spec' `master'
}
